import Vue from 'vue'
import axios from 'axios'

import App from './App'
import router from './router'
import store from './store'
import iView from 'iview';
import iEditor from 'iview-editor';

// 使用 CSS
import 'iview/dist/styles/iview.css';
import 'iview-editor/dist/iview-editor.css';

axios.defaults.withCredentials = true
//
// axios.create({
//     baseURL: process.env.NODE_ENV === 'development' ? `http://localhost:8080` : `http://localhost:8080`, // url = base url + request url
//     withCredentials: true, // send cookies when cross-domain requests
//     timeout: 5000 // request timeout
// })
//
// axios.interceptors.request.use(
//     config => {
//         // do something before request is sent
//         return config
//     },
//     error => {
//         // do something with request error
//         console.log(error) // for debug
//         return Promise.reject(error)
//     }
// )
//
// axios.interceptors.response.use(
//     response => {
//         const res = response.data
//         if (res.code === 401) {
//             // to re-login
//             router.push({path: '/login'})
//         } else if (res.code !== 200) {
//             Message({
//                 message: res.msg || 'Error',
//                 type: 'error',
//                 duration: 5 * 1000
//             })
//         }
//         return res
//     },
//     error => {
//         console.log('err' + error) // for debug
//         Message({
//             message: error.response.data.msg || 'Error',
//             type: 'error',
//             duration: 5 * 1000
//         })
//         return Promise.reject(error)
//     }
// )

Vue.prototype.apiBase = "http://localhost:8080"

if (!process.env.IS_WEB) Vue.use(require('vue-electron'))
Vue.http = Vue.prototype.$http = axios
Vue.config.productionTip = false

Vue.use(iView);
Vue.use(iEditor);

/* eslint-disable no-new */
new Vue({
    components: {App},
    router,
    store,
    template: '<App/>'
}).$mount('#app')
